Remote circuit provisioning

ABSTRACT

A machine readable medium for remote circuit provisioning is described. In one embodiment of the invention, a machine readable medium comprises receiving a packet on a circuit and provisioning the circuit in response to receiving the packet, wherein provisioning the circuit comprises retrieving parameters from a database, creating an empty circuit structure, and populating the empty circuit structure with the parameters.

BACKGROUND OF THE INVENTION

1. Field of the Invention

This invention relates to the field of networks, particularly to thearea of communication networks. More specifically, the present inventionrelates to remotely provisioning resources.

2. Description of the Related Art

The number of people and corporations connecting to the Internet hascontinually grown since the inception of the Internet. As of late 1999,the leading Internet Service Providers in the United States served atotal of 35 million subscribers (“Major Trends Affecting theTelecommunications Industry”, Plunkett's Telecommunications IndustryAlmanac). Between 1998 and 1999, the number of connections to theInternet across the globe has grown from 56.5 million to 73.7 million(“Ovum Report: Internet Market Forecasts: Global Internet Growth1998-2005”, GSM Data Knowledge Site).

This vast amount of growing Internet activity relies on numerous networkelements. These network elements include routers, cables, hubs, relays,switches, etc. to carry communications between and among networks. Anincreasing number of network elements have been deployed to supportincreasing Internet traffic, but advancements in network technology havealso been necessary to support the explosion in network traffic.

Current network elements assume multiple tasks such as terminatingnetwork connections, switching, routing, and access functions. Thesecurrent network elements have been developed to support the vast andgrowing number of subscribers communicating across networks and acrossthe Internet. Network elements have advanced from serving hundreds toserving thousands of subscribers, and now to hundreds of thousands ofsubscribers. These network elements are configured to support a varietyof communication protocols used by the multitude of subscribers. Thesesupported communication protocols may include Asynchronous Transfer Mode(ATM), Frame Relay, and various tunneling protocols. In addition, datais transmitted in stacks of protocols. For example, a subscriber maysend data which is Point to Point Protocol (PPP) over 1483 bridgedcircuit over ATM to a network element. Each circuit connecting to anetwork element must be configured for the type of traffic carried overthe circuit.

FIG. 1 (Prior Art) is a diagram of a network element terminatingcircuits of a network medium. Although only 4 physical circuits 105 areillustrated, a network medium 101 (such as copper wire, coaxial cable,fiber, etc) can be comprised of thousands of physical circuits. The ATMprotocol channelizes a network medium so that each of the physicalcircuits 105 can carry a separate subscriber session. The ATM medium 101connects to a port 103 on the network element 110. The networkadministrator configures each circuit to be a locally provisionedcircuit. The network administrator must enter parameters for eachphysical circuit 105 at a terminal connected to the network element 110.The parameters can include traffic shaping, Access Control List (ACL)selection, the encapsulation for the circuit, etc. The parameters arestored on the network element 110 in a number of provisioned circuitstructures 108. When the network administrator configures a circuit tobe a provisioned circuit, a provisioned circuit structure is created.The provisioned circuit structure is populated with the parametersentered by the network administrator and associated with the circuitidentified by the network administrator during configuration. Thenetwork element processes traffic received on the provisioned circuit asindicated by the parameters populating the provisioned circuitstructure. For ATM, the network manager would identify the slot, port,virtual path identifier (VPI) and virtual channel identifier (VCI) ofthe physical circuit being configured. When data is received on thephysical circuit with a VPI-VCI 10-40 on port 3 of slot 2, the networkelement looks for the provisioned circuit structure for the 10-40circuit on port 3 at slot 2. The provisioned circuit structure containsthe parameters for the network element to correctly process the datareceived. Data received on one of the physical circuits 105 notconfigured by the network administrator would not be processed by thenetwork element 110 and would be discarded. Since the number andlocation of terminals connected to the network element is limited, thismethod of provisioning circuits becomes less manageable as the number ofsubscribers of a network element increases. In addition, a vast number(possibly ranging from hundreds of thousands and beyond) of provisionedcircuit structures would consume large quantities of valuable memory inthe network element.

FIG. 2 (Prior Art) is a diagram of dynamic tunnel provisioning betweennetwork elements with a remote database. A packet is sent over aphysical circuit 201 to a network element 217. As in FIG. 1, the packetreceived on the physical circuit 201 is associated to a provisionedcircuit structure 203 corresponding to the physical circuit 201containing parameters entered by the network administrator using aterminal connected to the network element 217. The received data packetis decapsulated by a layer 1 decapsulation routine 204 (e.g. ATM) asdetermined by the entered parameters. The decapsulated packet is thendecapsulated by a layer 2/3 decapsulation routine 207, such as a PPPdecapsulation routine. The layer 2/3 routine 207 passes a subscriberidentifier (e.g. user1@domain.com) identified in the data packet to theAuthorization, Authentication, and Accounting (AAA) process 205. AAA 205requests information from a remote database 209 for the identifiedsubscriber. The remote database 209 returns information indicating thesubscriber is to be tunneled through a tunnel designated tunnelname. AAAsearches for tunnelname in a list of active tunnels. If the tunnel isactive, then the physical circuit 201 is bound to the active tunnel. Ifthe tunnel is not active, AAA 205 sends another request to the remotedatabase 209 for information corresponding to the tunnel tunnelname. Theremote database 209 returns tunnel configuration information to AAA 205.AAA 205 passes this information to a tunnel routine which establishes atunnel 211 and a session 215 for the subscriber with a peer networkelement 219. Dynamic tunnel provisioning allows a network manager toenter tunnel configurations as needed in the remote database instead ofat a local terminal.

Dynamic tunnel provisioning is triggered by a subscriber identifierstored within a layer 2/3 encapsulation. Dynamic tunnel provisioningdoes not relieve the task of configuring each circuit on the networkelement nor resolve the issue of memory consumption to support a circuitstructure for each provisioned circuit.

SUMMARY OF THE INVENTION

The invention provides a method and apparatus for remotely provisioningcircuits. According to one aspect of the invention, a method is providedwhich provisions circuits with parameters from a remote database.

According to one embodiment of the invention, a circuit receives apacket and the circuit is provisioned in response to the packetreceived. In one embodiment provisioning comprises receiving parametersfrom a remote database, creating an empty circuit structure, populatingthe circuit structure with the parameters, and associating the circuitto the provisioned circuit structure.

In an alternative embodiment of the invention, a set of circuits areconfigured as listening circuits. When one of the set of listeningcircuits receives a packet, the listening circuit is provisioned, andsubsequent packets received on the provisioned circuit are processedaccording to parameters corresponding to the provisioned circuit. Apacket received on an unconfigured circuit is discarded.

According to another embodiment of the invention, as set of circuits areassociated to a listening circuit structure. When one of the set ofcircuits receives a packet, the one is identified and a set ofparameters are retrieved for the identified circuit. An empty circuitstructure is created and populated with the set of parameters to becomea provisioned circuit structure. The identified circuit is disassociatedfrom the listening circuit structure and associated to the provisionedcircuit structure. Upon a subscriber ending event, a clean-up agentremoves the provisioned circuit structure and reassociates theidentified circuit with the listening circuit structure.

These and other aspects of the present invention will be betterdescribed with reference to the Detailed Description of the PreferredEmbodiment and the accompanying Figures.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention may best be understood by referring to the followingdescription and accompanying drawings that are used to illustrateembodiments of the invention. In the drawings:

FIG. 1 (Prior Art) is a diagram of a network element terminatingcircuits of a network medium.

FIG. 2 (Prior Art) is a diagram of dynamic tunnel provisioning betweennetwork elements with a network medium.

FIG. 3 is a flowchart for provisioning a circuit in response to activityon the circuit according to one embodiment of the invention.

FIG. 4A is a diagram of a network element with a set of circuitsconfigured as listening according to one embodiment of the invention.

FIG. 4B is a diagram of the network element receiving a packet over acircuit according to one embodiment of the invention.

FIG. 4C is a diagram of a network element processing the listeningcircuit structure according to one embodiment of the invention.

FIG. 5A is a diagram of a network element with circuits configured aslistening circuits according to one embodiment of the invention.

FIG. 5B is a diagram of a network element responding to network trafficaccording to one embodiment of the invention.

FIG. 5C is a diagram of a network element signaling the control processin response to network traffic according to one embodiment of theinvention.

FIG. 5D is a diagram of a network element provisioning a circuit inresponse to network traffic according to one embodiment of theinvention.

FIG. 6 is a flowchart of an exemplary technique for performing block 307of FIG. 3 according to one embodiment of the invention.

FIG. 7 is a diagram of an exemplary application of a network elementaggregating subscribers and managing multiple services according to oneembodiment of the invention.

FIG. 8 is a diagram illustrating another exemplary application of thenetwork element in a wholesale model for broadband access and IPservices according to one embodiment of the invention.

DETAILED DESCRIPTION OF THE DRAWINGS

In the following description, numerous specific details are set forth toprovide a thorough understanding of the invention. However, it isunderstood that the invention may be practiced without these specificdetails. In other instances, well-known protocols, structures andtechniques have not been shown in detail in order not to obscure theinvention. For example, the term routine is used throughout theapplication. The term routine can mean an individual process, a threadof a process, a routine of a process or program, etc.

The invention provides for a method and apparatus for remotelyprovisioning circuits on a network element. According to one embodimentof the invention, a circuit of a network element may be configured by annetwork administer at a terminal connected to that network element to bea listening circuit. In addition, the same or a different networkadministrator may enter parameters for that circuit into a remotedatabase connected to the network element. Upon the occurrence of anevent (e.g., the receipt of traffic on the circuit), the network elementwill access the parameters from the remote database and provision thecircuit.

FIG. 3 is a flowchart for provisioning a circuit in response to activityon the circuit according to one embodiment of the invention, while FIGS.4A-4C illustrate provisioning a circuit in response to a data packetbeing received according to one embodiment of the invention. FIG. 3 isdescribed with reference to FIGS. 4A-4C to aid in the understanding ofthe invention. Initially, a network administrator selects a set ofcircuits to be configured (in certain embodiments, circuits mayoptionally still be provisioned as described in the background section).The network administrator then configures these circuits at a terminalconnected to the network element as listening circuits at block 300. Asa result of the network administrator configuring circuits as listeningcircuits (also know as on-demand circuits), the network element createsa single listening circuit structure and associates the multiplelistening circuits to the listening circuit structure at block 301. Toillustrate, we turn to FIG. 4A.

FIG. 4A is a diagram of a network element with a set of circuitsconfigured as listening according to one embodiment of the invention. InFIG. 4A, a network medium 401 (e.g. fiber optic cable, coaxial cable,copper wire, etc) is coupled to a port 402 on the network element 404.Although only 4 listening circuits 403 and 2 unconfigured circuits 406are illustrated, the network medium 401 can be composed of thousands ofcircuits or channels. With reference to FIG. 4A, the network elementcreates the listening circuit structure 405. The network elementassociates the listening circuits 403 to the listening circuit structure405 as described later herein. The unconfigured circuits 406 are notassociated to any circuit structure and cannot accept traffic.

Returning to FIG. 3 at block 302, the network administrator entersparameters for the listening circuits in a remote database. In someinstances, the network administrator may enter the parameters into theremote database before configuring circuits as listening circuits at thenetwork element. Such a procedure may be followed to insure a listeningcircuit will have parameters entered in the remote database. Theresponsibility for entering the parameters and configuring the circuitsmay be performed by different people at different times. A networkprovider may configure circuits as listening for its ISP customers, butthe ISP may control the parameters for the circuits purchased from thenetwork provider. Thus, it should be understood that although a numberof circuits have been configured as listening, the parameters for thosecircuits might be entered individually over time. If a listening circuitdoes not have parameters entered into the remote database, then thetraffic received on the listening circuit will be discarded untilparameters are entered in the remote database. At block 303, the networkelement receives a data packet on a circuit P-Q (where P is the VPI andQ is the VPN). The control process of the network element is signaled atblock 305 that a packet was received on the physical circuit P-Q. Atblock 306, the network element determines if the circuit P-Q is alistening circuit. If the circuit P-Q is not a listening circuit,network element determines if the circuit is already provisioned atblock 308. The circuit receiving the packet may have already beenprovisioned. In one embodiment of the invention, some circuits on anetwork element can be remotely provisioned while other circuits arelocally provisioned. One example of an embodiment with both types ofprovisioning could be a network provider servicing different customertypes. One type of customer prefers to manage the parameters for thelarge number of circuits they purchase from the network provider. Thecircuits purchased by this type of customer would be configured locallyas listening circuits and the parameters entered in a remote database bythe customer. The other type of customer prefers the network provider toprovision the smaller number of circuits purchased by the customer.Since the circuits are fewer and the network provider does notanticipate changing the parameters, the network provider would provisionthe smaller number of circuits locally. If the circuit is provisioned,then the packet is processed accordingly at block 310. If the circuitreceiving the packet is not a provisioned circuit, then the circuit isunconfigured and the packet is discarded at block 309. If circuit P-Q isa listening circuit, then, the physical circuit is provisioned at block307. To illustrate, we turn to FIGS. 4B and 4C.

FIG. 4B is a diagram of the network element receiving a packet over acircuit according to one embodiment of the invention. FIG. 4Billustrates a data packet 409 being received on the one of the physicalcircuits 403 with VPI 10 and VCI 20 as described in block 303. A routine411 detects the packet 409 at circuit 10-20 and signals the controlprocess 415 that a data packet 409 has been received at circuit 10-20.

FIG. 4C is a diagram of a network element processing the listeningcircuit structure according to one embodiment of the invention. Asdescribed in block 307 of FIG. 3, the network element provisions thecircuit receiving the data packet. The network element 404 creates anempty circuit structure 420 for the physical circuit 10-20. The emptycircuit structure 420 is populated with parameters corresponding tophysical circuit 10-20 and becomes a provisioned circuit structure 420.The parameters can be retrieved from a remote database such as RADIUSwhere a network administrator entered the parameters at some earliermoment in time. The physical circuit 10-20 is disassociated from thelistening circuit structure 405 and associated with the provisionedcircuit structure 420. Processing of the packets from physical circuit10-20 is now performed with reference to the parameters stored in theprovisioned circuit structure 420 before being sent to the Internet 430or another network element.

In an alternative embodiment, each circuit configured as a listeningcircuit could be associated with an individual listening circuitstructure instead of a single listening circuit structure for a group oflistening circuits. Thus, the control process would not create an emptyprovisioned circuit structure for each circuit which receives a datapacket. The control process would populate the individual listeningcircuit structures with parameters retrieved from the remote database.Such an embodiment would simplify the functions of the control processbut reduce the memory savings of having a single listening circuitstructure for a group of listening circuits.

Association of a circuit to a provisioned circuit structure can beimplemented in a variety of ways. While the implementation of thisaspect of the invention is not limited, a number of examples arepresented to aid in understanding the invention. For example, oneembodiment could maintain a state structure indicating the state of acircuit: listening, provisioned and unconfigured. The state structurewould contain a reference field corresponding to the state. Allconfigured circuits having a listening state refer to the listeningcircuit structure. All unconfigured circuits in an unconfigured staterefer to a null address. The provisioned circuits refer to the addressof a provisioned circuit structure. When a listening circuit isprovisioned, its state structure is modified to refer to the remotelyprovisioned circuit structure.

In another embodiment, a linking structure may link a circuit to theappropriate structure. The link structure could index an address with acircuit handle. When a packet arrives, a circuit handle could be createdfrom the slot, port, and VPI-VCI pair. The network element could thensearch the link structure for the circuit handle and use the parametersstored at the indicated address. The addresses in the link structurewould be initialized to a null value. Once a circuit is configured aslistening, then the link structure is updated to reflect the address ofa listening circuit structure. Once the circuit is provisioned, the datastructure is updated to reflect the address of the correspondingprovisioned circuit structure.

In one embodiment of the invention, once a listening circuit isprovisioned, it remains a provisioned circuit. In alternativeembodiments of the invention, after a listening circuit is provisioned,a subscriber ending event will result in the circuit being unprovisionedor reassociated to the listening circuit structure. A clean-up routineor process can be implemented in numerous ways in response to numerousevents. A subscriber ending event can include any event wherein thecircuit would no longer transmit the subscriber session (e.g., the ISPsuspends the customer, port of the circuit fails, servicing of thenetwork element, a subscriber switches from DSL to cable etc.). Atimeout routine could determine when a subscriber ending event hasoccurred. Once the network element determines a subscriber ending eventhas occurred for a circuit, a clean up routine can operate such that theprovisioned circuit structure for that circuit is released from memory,and the circuit is reassociated to the listening circuit structure.Another routine could detect mechanical failure of a port on the networkelement and reassociate any provisioned circuits of that port to thelistening circuit structure. Another embodiment of the inventionprovides for an ISP customer to send a signal to the network element.Upon receiving the signal the network element reassociates a circuitindicated by the signal to the listening circuit structure. Theprovisioned circuit structure is then released from memory. Although anumber of implementations for this aspect of the invention have beendescribed, they are only described to illustrate examples and not meantto be limiting on the invention.

In an alternative embodiment of the invention, the clean-up routinedifferentiates between circuits on the same network element which areprovisioned remotely and locally. Provisioned circuit structures wouldbe distinguished for locally provisioned and remotely provisionedcircuits. For listening circuits, a flag is sent to the control processindicating the circuit is listening. The control process would assignthe flag value to an element of the provisioned circuit structure. Upona subscriber ending event, the clean-up agent will only associate theprovisioned circuit to the listening circuit structure if the flag valueis detected. If the flag value is not detected, then the clean-up agentcan either release the provisioned circuit structure making theprovisioned circuit an unconfigured circuit, or the clean-up agent cando nothing. If traffic is not to be processed on the circuit and theclean-up agent does not act on locally provisioned circuits, then anetwork administrator must release the provisioned circuit.

A More Detailed Exemplary Implementation

FIGS. 5A-5D are exemplary diagrams of the provisioning of a circuit inresponse to network traffic according to one embodiment of theinvention. FIG. 5A is a diagram of a network element with circuitsconfigured as listening circuits according to one embodiment of theinvention. A network medium 501 connects to a port 503 on a networkelement 509. The network medium 501 can be composed of thousands ofphysical circuits, but only six physical circuits are illustrated: 4circuits configured as listening circuits 505 and 2 unconfiguredcircuits 502. The circuits are configured as listening circuits 505 asdescribed by FIG. 4A and FIG. 3. A listening circuit structure can bedistinguished from a provisioned circuit structure in a variety of ways.For example, the listening circuit structure and the provisioned circuitstructure could be defined as the same data structure type with a bitflag identifier. If the bit flag is set to 1, then a routine processingthe circuit structure will recognize the circuit structure as alistening circuit structure. Otherwise, the routine processes thecircuit structure as a provisioned circuit structure. In anotherimplementation of the invention, the provisioned circuit structure andthe listening circuit structure could be objects of different classes.The listening circuit structure could be an object of a class inheritingfrom the class of the provisioned circuit structure. In an alternativeembodiment, the listening circuit structure and the provisioned circuitstructure could be defined as different data structure types. In theexemplary embodiment illustrated by FIG. 5A, the listening circuitstructure 507 includes a bit flag 511 set to 1 identifying the circuitstructure as a listening circuit structure.

FIG. 6 is a flowchart of an exemplary technique for performing block 307of FIG. 3 according to one embodiment of the invention, while FIG. 5B isa diagram of a network element responding to network traffic accordingto one embodiment of the invention. FIG. 6 will be described withreference to FIGS. 5B-5D to aid in the understanding of the exemplaryembodiment of the invention. Once the network element is signaled that apacket has been received on one of the listening circuits (e.g., acircuit with VPI-VCI 10-20) at block 305 of FIG. 3, the network elementcreates a circuit handle identifying the listening circuit and assignsthe handle to an element of the listening circuit structure at block601. The listening circuit structure identifying the listening circuit10-20 is passed by value to a routine at block 603 of FIG. 6. We nowturn to FIG. 5B.

FIG. 5B is a diagram of a network element responding to network trafficaccording to one embodiment of the invention. FIG. 5B illustrates thepacket 506 being received on the listening circuit 10-20. FIG. 5B alsoillustrates one of the elements of the listening circuit structure 507having the circuit handle value assigned and the listening circuitstructure 507 being passed to a routine 510. In one embodiment, thecircuit handle can be a 32 bit value created from the VCI-VPI pair, theslot on the network element 509, and the port 503 of the network element509. According to one embodiment of the invention, the listening circuitstructure 507 is passed by value because the element of the listeningcircuit structure may be assigned a different circuit handle if anotherlistening circuit receives a packet. Once the routine receives thelistening circuit structure (by value or pointer), it sends a message tothe control process at block 609. We now turn to FIG. 5C.

FIG. 5C is a diagram of a network element signaling the control processin response to network traffic according to one embodiment of theinvention. FIG. 5C illustrates an exemplary embodiment of the inventionwherein the message 516, referred to in block 609 of FIG. 6, includesthe circuit handle and a code. The code is an identifier indicating tothe control process 515 to “create a circuit.” At block 610, the controlprocess disassociates the listening circuit identified by the circuithandle from the listening circuit structure. At block 613, a database isqueried with the for parameters for the listening circuit which receiveda data packet. FIG. 5C illustrates an exemplary embodiment wherein thecontrol process 515 queries a remote database 517 with the circuithandle. The remote database 517 returns the parameters 519 correspondingto the specified circuit handle. At block 615, the control processdetermines if the circuit handle is found in the database. If thecircuit handle is not found, then the control process reassociates thecircuit to the listening circuit structure at block 619. If the circuithandle is found in the database, then the parameters are returned to thecontrol process at block 617.

Once the configuration parameters are received, then the control processcreates an empty circuit structure in accordance with the “createcircuit” code at block 620. If an empty circuit structure cannot becreated (e.g. low memory, routine failure, etc.) then control flows toblock 619. If the circuit structure is created successfully, then atblock 623 the empty circuit structure is populated with the parametersto become a provisioned circuit structure. At block 625, the circuit isassociated with the provisioned circuit structure. To illustrate, weturn to FIG. 5D.

FIG. 5D is a diagram of a network element provisioning a circuit inresponse to network traffic according to one embodiment of theinvention. The control process 515 creates an empty circuit structure520 with the identifier bit 511 indicating the circuit structure is nota listening circuit structure 507. The control process 515 thenpopulates the empty circuit structure 520 with the parameters 519 ofFIG. 5C received from the database 517 of FIG. 5C. Afterwards, thecontrol process 515 associates circuit 10-20 with the provisionedcircuit structure 520. The network element now uses the parametersstored in the provisioned circuit structure 520 to process the datapackets received over circuit 10-20.

The capability to remotely provision circuits is advantageous for anetwork element servicing relatively large numbers (e.g., hundreds ofthousands) of subscribers. Such a network element includes numerousports coupled to a network medium possibly comprised of thousands ofcircuits. The variety of communication protocols carried over theseports and circuits require memory for the numerous decapsulationroutines. Furthermore, the relatively large number of subscribersserviced by the network element requires memory for routing tables andforwarding tables. In such a network element, memory becomes a premium.Provisioning circuits on demand with a single listening circuitstructure conserves this premium resource.

FIG. 7 is a diagram of an exemplary application of a network elementaggregating subscribers and managing multiple services according to oneembodiment of the invention. In the example of FIG. 7, multiplesubscribers (such as residential subscribers 703, telecommuters 702, asmall business 705, etc) connect to a regional data network cloud 711.The network cloud 711 can include digital subscriber line (DSL), cable,wireless network access, etc. The network cloud 711 feeds into thenetwork element 701. A corporate network 704 may also feed into thenetwork element 701. The subscribers can access services, such as theInternet 709 or premium services 706, through the network element 701.

Service providers who need to widely deploy broadband access acrosstheir regional or national customer base would use the network element701 to terminate multiple large circuits from multiple network providers(either carrier or cable operator) and manage the individual subscribersessions. Remote provisioning of circuits eases the task of aggregatinga large customer base. The ability to enter circuit configurations onRADIUS (or some other remote database) instead of a terminal connectedto the network element provides an easier and manageable task for thenetwork administrator. Furthermore, a single listening circuit structureenables oversubscribing. The network administrator can configure anumber of listening circuits greater than the number of circuitssupported by a network element's resources. As an illustration, anetwork element may have the hardware to support 10,000 circuits butmemory resources only support 8000 circuits. The network administratorcan configure 9000 or 10000 circuits as listening circuits.Oversubscribing circuits reduces tasks for the network administrator. Onexample of the advantage of oversubscribing is when a subscriber cancelshis/her DSL service for cable service then the network administratordoes not have to make any changes to the network element since allcircuits are listening. The new circuit receiving the subscriber's cabletraffic will be provisioned and the circuit previously carrying DSLtraffic will be reassociated with the listening circuit structure.Provisioning a circuit in response to a traffic trigger enables moreefficient service to customers and quicker deployment of networkelements. The network element can authenticate each subscriber (703,702, 704, and 705), can integrate with the existing accounting andoperational database(s), and can send the groomed traffic to theInternet 709 via a backbone directly or a backbone router.

FIG. 8 is a diagram illustrating another exemplary application of thenetwork element in a wholesale model for broadband access and IPservices according to one embodiment of the invention. In the example ofFIG. 8, a dashed square 800 around a regional data network cloud 805 andthe network element 701 of FIG. 7 indicates a network provider 800.Subscriber's such as residential subscribers 803, small business 807, ora telecommuter 802 can connect to a regional data network cloud 805. Theregional data network cloud feeds into the network element 701. In FIG.8, the network element 701 of FIG. 7 connects to Internet ServiceProviders (ISPs) A 811 and ISP Z 813. ISP A 811 connects to acorporation 809. ISP Z 813 connects to a wholesale premium contentservice 817. Both ISP A 811 and ISP Z provide access to the Internetbackbone 815. The network provider 800 can have its own access offeringsand value added services 819.

A network provider 800 implementing a wholesale model could use thenetwork element 701 to provide wholesale broadband access and IPservices to its ISP customers 811, 813. The network provider 800 caninclude a regional data network 805 feeding into the network element 701of FIG. 7. Using the powerful wholesale capabilities and scalability ofthe network element 701, the network provider 800 could deliver accessbandwidth, IP-based applications and premium content 817 to hundreds ofretail access providers 811, 813 through a single network element 701.Remote circuit provisioning enables the network provider to easilyconfigure new circuits for a new ISP customer and meet the requirementsof customers quickly and efficiently.

It should be understood that the exemplary application of FIGS. 7 and 8are not mutually exclusive, but rather that one network element mayperform both applications simultaneously.

The techniques shown in the figures can be implemented using code anddata stored and executed on computers. Such computers store andcommunicate (internally and with other computers over a network) codeand data using machine-readable media, such as magnetic disks; opticaldisks; random access memory; read only memory; flash memory devices;electrical, optical, acoustical or other form of propagated signals(e.g., carrier waves, infrared signals, digital signals, etc.); etc. Ofcourse, one or more parts of the invention may be implemented using anycombination of software, firmware, and/or hardware.

While the invention has been described in terms of several embodiments,those skilled in the art will recognize that the invention is notlimited to the embodiments described.

The provisioning of circuits could be implemented by alternativemethods. Each circuit in the range of listening circuits could begrouped by similar parameters. For example, one group of circuits onslot 1 port 1 could carry PPP over ATM traffic while another group onthe same slot and port could carry IP over ATM traffic. Each group wouldbe associated to a listening circuit structure containing theencapsulation information for that group. When a listening circuitreceives traffic, the network element could identify the listeningcircuit and begin to simultaneously process the packets received overthe circuit and store the processed packets into a buffer whileprovisioning the listening circuit.

The method and apparatus of the invention can be practiced withmodification and alteration within the spirit and scope of the appendedclaims. The description is thus to be regarded as illustrative insteadof limiting on the invention.

1-39. (canceled)
 40. A machine readable medium that provides instructions, which when executed by a set of processors, cause said set of processors to perform operations comprising: receiving a packet on a circuit in a network element; and provisioning the circuit in the network element in response to said receiving the packet on the circuit.
 41. The machine readable medium of claim 40, wherein the circuit is associated with a listening circuit structure before the packet is received on the circuit, and the circuit is disassociated from the listening circuit structure after the packet is received on the circuit.
 42. The machine readable medium of claim 40, wherein provisioning the circuit comprises: identifying the circuit; creating a provisioned circuit structure for the circuit; and associating the circuit to the provisioned circuit structure.
 43. The machine readable medium of claim 42, wherein creating the provisioned circuit structure comprises: retrieving a set of parameters corresponding to the circuit from a database; and populating an empty circuit structure with the set of parameters.
 44. The machine readable medium of claim 40, further comprising unprovisioning the circuit upon a subscriber ending event.
 45. A machine readable medium that provides instructions, which when executed by a set of processors, cause said set of processors to perform operations comprising: configuring a set of circuit as listening circuits in a network element; receiving a packet on one of the set of listening circuits; provisioning the one of the set of listening circuits in response to said receiving the packet on one of the set of listening circuits; and processing a set of subsequent packets received on the provisioned one of the set of listening circuits.
 46. The machine readable medium of claim 45, wherein provisioning the one of the set of listening circuits comprises: retrieving a set of parameters for the one of the set of listening circuits from a database; and provisioning the one of the set of listening circuits with the set of parameters.
 47. The machine readable medium of claim 45, wherein configuring the set of circuits as listening circuits comprises associating the set of listening circuits to a single circuit structure, this single circuit structure being a circuit structure having an indicator indicating the circuit structure as a listening circuit structure.
 48. The machine readable medium of claim 45 further comprising unprovisioning the provisioned one in response to a subscriber ending event.
 49. A machine readable medium that provides instructions, which when executed by a set of processors, cause said set of processors to perform operations comprising: listening for a packet over a set of configured circuits in a network element; receiving the packet on one of the set of configured circuits; identifying the one of the set of configured circuits; signaling a routine that the packet has been detected on the one of the set of configured circuits; retrieving a set of parameters for the one of the set of configured circuits from a database; creating an empty circuit structure for the one of the set of configured circuits; populating the empty circuit structure with the set of parameters, the populated empty circuit structure becoming a provisioned circuit structure; and associating a set of subsequent packets received on the one of the set of listening circuits with the provisioned circuit structure.
 50. The machine readable medium of claim 49, wherein listening for the packet over the set of configured circuits comprises associating the set of configured circuits to a listening circuit structure.
 51. The machine readable medium of claim 49, wherein signaling the routine comprises passing the routine the listening circuit structure, the listening circuit structure identifying the one of the set of configured circuits.
 52. The machine readable medium of claim 49, wherein the database can be a remote database or a local database.
 53. The machine readable medium of claim 49 further comprising releasing the provisioned circuit structure and listening for a new packet over the one of the set of configured circuits in response to a subscriber ending event.
 54. A machine readable medium that provides instructions, which when executed by a set of processors, cause said set of processors to perform operations comprising: indicating a circuit structure as a listening circuit structure in a network element; associating a set of configured circuits with the listening circuit structure; receiving a packet on one circuit of the set of configured circuits; provisioning the one circuit in response to said receiving the packet on the one circuit; and accepting a set of subsequent packets received on the provisioned circuit.
 55. The machine readable medium of claim 54 further comprising discarding a set of packets transmitted over an unconfigured circuit, the unconfigured circuit not being associated with the listening circuit structure.
 56. The machine readable medium of claim 54, wherein provisioning the one circuit comprises: identifying the one circuit with a circuit handle; retrieving a set of parameters corresponding to the circuit handle from a database; creating an empty circuit structure; and populating the empty circuit structure with the set of parameters.
 57. The machine readable medium of claim 56, wherein the database can be a local database or a remote database.
 58. The machine readable medium of claim 54 further comprising unprovisioning the one circuit and indicating the one circuit as the listening circuit structure in response to a subscriber ending event.
 59. A network element comprising: a network card having a port to couple a set of circuits; and a computer coupled to the network card, the computer to provision one circuit of the set of circuits in response to receiving a packet on the one circuit.
 60. The network element of claim 59 further comprising a remote database to store parameters for provisioning the one circuit.
 61. The network element of claim 59, wherein the computer comprises: a database to store a set of parameters; a memory element to store a listening circuit structure and a set of provisioned circuit structures; and an operating system to associate a set of the set of circuits with the listening circuit structure, and to provision the one circuit.
 62. The network element of claim 61 wherein to provision the one circuit comprises: to identify the one circuit; to disassociate the one circuit from the listening circuit structure; to create an empty circuit structure; to populate the empty circuit structure with the set of configuration parameters, making the empty circuit structure a provisioned circuit structure; and to associate the one circuit to the provisioned circuit structure.
 63. The network element of a claim 59 further comprising the computer to unprovision one circuit of the set of circuits in response to a subscriber ending event.
 64. An apparatus comprising: a port to couple a set of circuits; a memory element to store a listening circuit structure and a set of provisioned circuit structures; a database to store a set of parameters for a subset of the set of circuits; and a computer to provision one of the subset of circuits.
 65. The apparatus of claim 64, wherein the database can be a local or remote database.
 66. The apparatus of claim 64, wherein the computer to provision the one of the set of circuits comprises: retrieving the set of parameters corresponding to the one circuit from the database; creating an empty circuit structure for the one circuit, and populating the empty circuit structure with the set of configuration parameters.
 67. The apparatus of claim 64, wherein the computer provisions one of the subset of circuits in response to a packet being detected on the one circuit.
 68. The apparatus of claim 64 further comprising unprovisioning the one of the subset of circuits in response to a subscriber ending event.
 69. An apparatus comprising: a port to couple a set of circuits; a memory element to store a set of circuit structures; a storage to store a set of parameters; and a computer to provision one circuit of the set of circuits in response to a packet being received on the one circuit.
 70. The apparatus of claim 69, wherein one of the set of circuit structures is a listening circuit structure.
 71. The apparatus of claim 69, wherein the storage can be a local or remote storage.
 72. The apparatus of claim 69, wherein the computer to provision one circuit of the set of circuits comprises: to identify the one circuit; to retrieve the set of parameters corresponding to the identified one circuit from the storage; to create an empty circuit structure for the one circuit, and to populate the empty circuit structure with the set of parameters.
 73. The apparatus of claim 69 further comprising unprovisioning the one circuit of the set of circuits in response to a subscriber ending event.
 74. A computer implemented method comprising: receiving a packet on a circuit in a network element; and provisioning the circuit in the network element in response to said receiving the packet on the circuit.
 75. The method of claim 74, wherein the circuit is associated with a listening circuit structure before the packet is received on the circuit, and the circuit is disassociated from the listening circuit structure after the packet is received on the circuit.
 76. The method of claim 74, wherein provisioning the circuit comprises: identifying the circuit; creating a provisioned circuit structure for the circuit; and associating the circuit to the provisioned circuit structure.
 77. The method of claim 74 further comprising unprovisioning the circuit upon a subscriber ending event.
 78. The method of claim 76 wherein creating the provisioned circuit structure comprises: retrieving a set of parameters corresponding to the circuit from a database; and populating an empty circuit structure with the set of parameters.
 79. An apparatus comprising: a network element including, an interface to be coupled to a circuit; a control process module operative to provision the circuit in response to receiving a packet on the circuit.
 80. The apparatus of claim 79, wherein the control process module further operative to associate the circuit with a listening circuit structure before the packet is received on the circuit, and the circuit is disassociated from the listening circuit structure after the packet is received on the circuit.
 81. The apparatus of claim 79, wherein the control process module to provision the circuit is operative to identify the circuit, create a provisioned circuit structure for the circuit, and associate the circuit to the provisioned circuit structure.
 82. The apparatus of claim 81, wherein the control process module to create the provisioned circuit structure is operative to retrieve a set of parameters corresponding to the circuit from a database and populate an empty circuit structure with the set of parameters.
 83. The apparatus of claim 82, wherein the control process module is operative to unprovision the circuit in response to a subscriber ending event. 